void
babl_formats_init (void)
{
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR),
+ const Babl *types[]={
babl_type_from_id (BABL_DOUBLE),
- babl_component_from_id (BABL_RED_NONLINEAR),
- babl_component_from_id (BABL_GREEN_NONLINEAR),
- babl_component_from_id (BABL_BLUE_NONLINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR),
babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_RED_NONLINEAR),
- babl_component_from_id (BABL_GREEN_NONLINEAR),
- babl_component_from_id (BABL_BLUE_NONLINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR),
- babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_RED_NONLINEAR),
- babl_component_from_id (BABL_GREEN_NONLINEAR),
- babl_component_from_id (BABL_BLUE_NONLINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR),
+ babl_type_from_id (BABL_HALF),
babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_RED_NONLINEAR),
- babl_component_from_id (BABL_GREEN_NONLINEAR),
- babl_component_from_id (BABL_BLUE_NONLINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR_PREMULTIPLIED),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_RED_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_GREEN_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_BLUE_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR_PREMULTIPLIED),
babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_RED_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_GREEN_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_BLUE_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_NONLINEAR_PREMULTIPLIED),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_RED_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_GREEN_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_BLUE_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGB_NONLINEAR),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_RED_NONLINEAR),
- babl_component_from_id (BABL_GREEN_NONLINEAR),
- babl_component_from_id (BABL_BLUE_NONLINEAR),
- NULL);
+ babl_type_from_id (BABL_U32)
+ };
+ for (int i = 0; i < sizeof (types)/sizeof(types[0]);i++)
+ {
+ const Babl *type = types[i];
+
+ babl_format_new (
+ babl_model_from_id (BABL_RGBA_NONLINEAR_PREMULTIPLIED),
+ type,
+ babl_component_from_id (BABL_RED_NONLINEAR_MUL_ALPHA),
+ babl_component_from_id (BABL_GREEN_NONLINEAR_MUL_ALPHA),
+ babl_component_from_id (BABL_BLUE_NONLINEAR_MUL_ALPHA),
+ babl_component_from_id (BABL_ALPHA),
+ NULL);
+
+ babl_format_new (
+ babl_model_from_id (BABL_RGBA_PERCEPTUAL_PREMULTIPLIED),
+ type,
+ babl_component_from_id (BABL_RED_PERCEPTUAL_MUL_ALPHA),
+ babl_component_from_id (BABL_GREEN_PERCEPTUAL_MUL_ALPHA),
+ babl_component_from_id (BABL_BLUE_PERCEPTUAL_MUL_ALPHA),
+ babl_component_from_id (BABL_ALPHA),
+ NULL);
+
+ babl_format_new (
+ babl_model_from_id (BABL_RGBA_NONLINEAR),
+ type,
+ babl_component_from_id (BABL_RED_NONLINEAR),
+ babl_component_from_id (BABL_GREEN_NONLINEAR),
+ babl_component_from_id (BABL_BLUE_NONLINEAR),
+ babl_component_from_id (BABL_ALPHA),
+ NULL);
+
+ babl_format_new (
+ babl_model_from_id (BABL_RGBA_PERCEPTUAL),
+ type,
+ babl_component_from_id (BABL_RED_PERCEPTUAL),
+ babl_component_from_id (BABL_GREEN_PERCEPTUAL),
+ babl_component_from_id (BABL_BLUE_PERCEPTUAL),
+ babl_component_from_id (BABL_ALPHA),
+ NULL);
+
babl_format_new (
babl_model_from_id (BABL_RGB_NONLINEAR),
- babl_type_from_id (BABL_U16),
+ type,
babl_component_from_id (BABL_RED_NONLINEAR),
babl_component_from_id (BABL_GREEN_NONLINEAR),
babl_component_from_id (BABL_BLUE_NONLINEAR),
NULL);
babl_format_new (
babl_model_from_id (BABL_RGB_NONLINEAR),
- babl_type_from_id (BABL_U8),
+ type,
babl_component_from_id (BABL_RED_NONLINEAR),
babl_component_from_id (BABL_GREEN_NONLINEAR),
babl_component_from_id (BABL_BLUE_NONLINEAR),
NULL);
+
babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
- babl_component_from_id (BABL_ALPHA),
+ babl_model_from_id (BABL_RGB_PERCEPTUAL),
+ type,
+ babl_component_from_id (BABL_RED_PERCEPTUAL),
+ babl_component_from_id (BABL_GREEN_PERCEPTUAL),
+ babl_component_from_id (BABL_BLUE_PERCEPTUAL),
NULL);
babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA_PREMULTIPLIED),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
+ babl_model_from_id (BABL_RGB_PERCEPTUAL),
+ type,
+ babl_component_from_id (BABL_RED_PERCEPTUAL),
+ babl_component_from_id (BABL_GREEN_PERCEPTUAL),
+ babl_component_from_id (BABL_BLUE_PERCEPTUAL),
NULL);
+
babl_format_new (
babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA),
- babl_type_from_id (BABL_U16),
+ type,
babl_component_from_id (BABL_GRAY_NONLINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA_PREMULTIPLIED),
- babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_GRAY_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
NULL);
+
babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR),
- babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
+ babl_model_from_id (BABL_MODEL_GRAY_PERCEPTUAL),
+ type,
+ babl_component_from_id (BABL_GRAY_PERCEPTUAL),
NULL);
+
babl_format_new (
babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA),
- babl_type_from_id (BABL_U8),
+ type,
babl_component_from_id (BABL_GRAY_NONLINEAR),
babl_component_from_id (BABL_ALPHA),
NULL);
- babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA_PREMULTIPLIED),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_GRAY_NONLINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
- NULL);
- /* overriding name, since the generated name would be wrong due
- * to differing types
- */
- babl_format_new (
- "name", "Y'CbCr u8",
- "planar",
- babl_model_from_id (BABL_YCBCR),
- babl_type_from_id (BABL_U8_LUMA),
- babl_sampling (1, 1),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
- babl_type_from_id (BABL_U8_CHROMA),
- babl_sampling (2, 2),
- babl_component_from_id (BABL_CB),
- babl_sampling (2, 2),
- babl_component_from_id (BABL_CR),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_YCBCR),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_CB),
- babl_component_from_id (BABL_CR),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_YCBCR_ALPHA),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_NONLINEAR),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_CB),
- babl_component_from_id (BABL_CR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
babl_format_new (
- babl_model_from_id (BABL_RGBA),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_RED),
- babl_component_from_id (BABL_GREEN),
- babl_component_from_id (BABL_BLUE),
+ babl_model_from_id (BABL_MODEL_GRAY_PERCEPTUAL_ALPHA),
+ type,
+ babl_component_from_id (BABL_GRAY_PERCEPTUAL),
babl_component_from_id (BABL_ALPHA),
NULL);
+
babl_format_new (
- babl_model_from_id (BABL_RGBA),
- babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_RED),
- babl_component_from_id (BABL_GREEN),
- babl_component_from_id (BABL_BLUE),
+ babl_model_from_id (BABL_MODEL_GRAY_NONLINEAR_ALPHA_PREMULTIPLIED),
+ type,
+ babl_component_from_id (BABL_GRAY_NONLINEAR_MUL_ALPHA),
babl_component_from_id (BABL_ALPHA),
NULL);
+
+
babl_format_new (
babl_model_from_id (BABL_RGBA),
- babl_type_from_id (BABL_DOUBLE),
+ type,
babl_component_from_id (BABL_RED),
babl_component_from_id (BABL_GREEN),
babl_component_from_id (BABL_BLUE),
babl_component_from_id (BABL_ALPHA),
NULL);
+
babl_format_new (
- babl_model_from_id (BABL_RGBA),
- babl_type_from_id (BABL_U8),
+ babl_model_from_id (BABL_RGB),
+ type,
babl_component_from_id (BABL_RED),
babl_component_from_id (BABL_GREEN),
babl_component_from_id (BABL_BLUE),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_PREMULTIPLIED),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_RED_MUL_ALPHA),
- babl_component_from_id (BABL_GREEN_MUL_ALPHA),
- babl_component_from_id (BABL_BLUE_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGBA_PREMULTIPLIED),
- babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_RED_MUL_ALPHA),
- babl_component_from_id (BABL_GREEN_MUL_ALPHA),
- babl_component_from_id (BABL_BLUE_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
NULL);
+
babl_format_new (
babl_model_from_id (BABL_RGBA_PREMULTIPLIED),
- babl_type_from_id (BABL_U8),
+ type,
babl_component_from_id (BABL_RED_MUL_ALPHA),
babl_component_from_id (BABL_GREEN_MUL_ALPHA),
babl_component_from_id (BABL_BLUE_MUL_ALPHA),
babl_component_from_id (BABL_ALPHA),
NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGB),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_RED),
- babl_component_from_id (BABL_GREEN),
- babl_component_from_id (BABL_BLUE),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGB),
- babl_type_from_id (BABL_U16),
- babl_component_from_id (BABL_RED),
- babl_component_from_id (BABL_GREEN),
- babl_component_from_id (BABL_BLUE),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_RGB),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_RED),
- babl_component_from_id (BABL_GREEN),
- babl_component_from_id (BABL_BLUE),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_GRAY_ALPHA),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_LINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_GRAY_ALPHA_PREMULTIPLIED),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_LINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_GRAY),
- babl_type_from_id (BABL_FLOAT),
- babl_component_from_id (BABL_GRAY_LINEAR),
- NULL);
+
babl_format_new (
babl_model_from_id (BABL_GRAY_ALPHA),
- babl_type_from_id (BABL_U16),
+ type,
babl_component_from_id (BABL_GRAY_LINEAR),
babl_component_from_id (BABL_ALPHA),
NULL);
babl_format_new (
babl_model_from_id (BABL_GRAY_ALPHA_PREMULTIPLIED),
- babl_type_from_id (BABL_U16),
+ type,
babl_component_from_id (BABL_GRAY_LINEAR_MUL_ALPHA),
babl_component_from_id (BABL_ALPHA),
NULL);
babl_format_new (
babl_model_from_id (BABL_GRAY),
- babl_type_from_id (BABL_U16),
+ type,
babl_component_from_id (BABL_GRAY_LINEAR),
NULL);
+
+ }
+
+ /* overriding name, since the generated name would be wrong due
+ * to differing types
+ */
babl_format_new (
- babl_model_from_id (BABL_GRAY_ALPHA),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_GRAY_LINEAR),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_GRAY_ALPHA_PREMULTIPLIED),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_GRAY_LINEAR_MUL_ALPHA),
- babl_component_from_id (BABL_ALPHA),
- NULL);
- babl_format_new (
- babl_model_from_id (BABL_GRAY),
- babl_type_from_id (BABL_U8),
- babl_component_from_id (BABL_GRAY_LINEAR),
+ "name", "Y'CbCr u8",
+ "planar",
+ babl_model_from_id (BABL_YCBCR),
+ babl_type_from_id (BABL_U8_LUMA),
+ babl_sampling (1, 1),
+ babl_component_from_id (BABL_GRAY_NONLINEAR),
+ babl_type_from_id (BABL_U8_CHROMA),
+ babl_sampling (2, 2),
+ babl_component_from_id (BABL_CB),
+ babl_sampling (2, 2),
+ babl_component_from_id (BABL_CR),
NULL);
-
babl_format_new (
babl_model_from_id (BABL_YCBCR),
babl_type_from_id (BABL_FLOAT),